Skip to content

feat(pt-BR): add Brazilian Portuguese localization - #1265

Closed
payaci wants to merge 14 commits into
openclaw:mainfrom
payaci:feat-ptbr-localization
Closed

feat(pt-BR): add Brazilian Portuguese localization#1265
payaci wants to merge 14 commits into
openclaw:mainfrom
payaci:feat-ptbr-localization

Conversation

@payaci

@payaci payaci commented Aug 28, 2026

Copy link
Copy Markdown

Related: #61

What Problem This Solves

Resolves the lack of Brazilian Portuguese (pt-BR) localization in OpenClaw Windows Node.

Brazilian Portuguese users currently need to use the application in English, which makes onboarding, settings, diagnostics, permissions, notifications, and other user-facing workflows less accessible.

Why This Change Was Made

This change introduces an initial Brazilian Portuguese localization covering the application's user interface and major workflows.

Technical terms such as Node, Gateway, MCP, JSON, and PATH were preserved where appropriate to maintain consistency with the product and technical documentation.

User Impact

Brazilian Portuguese users can now use OpenClaw Windows Node in their native language across most of the application interface, including:

  • Onboarding
  • Tray menu
  • Settings
  • Diagnostics
  • Permissions
  • Sessions
  • Connection and pairing flows
  • Notifications
  • Node management

Evidence

  • Added Brazilian Portuguese (pt-BR) localization resources.
  • Reviewed and adjusted translations for UI consistency.
  • Preserved placeholders, formatting, and technical terminology.

Change Type

  • Bug fix
  • Feature
  • Refactor
  • Docs or instructions
  • Tests or validation
  • Security hardening
  • Chore or infrastructure

Scope

  • Tray or WinUI UX
  • Windows node capability
  • Local MCP or winnode
  • Gateway, connection, or pairing
  • Setup or onboarding
  • Permissions, privacy, or security
  • Tests, CI, or docs

Validation

Localization resources were reviewed for:

  • XML structure preservation
  • Placeholder preservation ({0}, {1}, etc.)
  • Consistent terminology
  • UI translation coverage

Real Behavior Proof

  • Environment tested: Windows
  • PR head or commit tested: Current branch head
  • Exact steps or command run: Localization resource review and validation
  • Evidence after fix: Brazilian Portuguese translations available in resource file
  • Observed result: User-facing strings are translated to pt-BR
  • Screenshot or artifact links verified? (No)
  • Not verified or blocked: Full UI walkthrough

Security Impact

  • New permissions or capabilities? (No)
  • Secrets or tokens handling changed? (No)
  • New or changed network calls? (No)
  • Command or tool execution surface changed? (No)
  • Data access scope changed? (No)

Compatibility and Migration

  • Backward compatible? (Yes)
  • Config or environment changes? (No)
  • Migration needed? (No)

Review Conversations

  • I replied to or resolved every bot review conversation addressed by this PR.
  • I left unresolved only conversations that still need maintainer judgment.

@clawsweeper

clawsweeper Bot commented Aug 28, 2026

Copy link
Copy Markdown

🦞👀
ClawSweeper picked this up.

Pull request received. I will update this pull request when review starts.

@clawsweeper clawsweeper Bot added merge-risk: 🚨 compatibility 🚨 Merging this PR could break existing users, config, migrations, defaults, or upgrades. P3 Low-risk cleanup, docs, polish, ergonomics, or speculative feature. rating: 🦪 silver shellfish Thin PR readiness signal; proof, validation, or implementation needs work. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask. labels Aug 28, 2026
@clawsweeper

clawsweeper Bot commented Aug 28, 2026

Copy link
Copy Markdown

Codex review: needs maintainer review before merge. Reviewed September 2, 2026, 1:22 PM ET / 17:22 UTC.

ClawSweeper review

What this changes

Adds Brazilian Portuguese WinUI resources, enables the pt-BR test-language override, documents the locale, and includes it in locale-specific tray tests.

Merge readiness

⚠️ Ready for maintainer review - 2 items remain

Keep open. This is a coherent, requested localization contribution that current main does not contain; the submitted resource catalog has key parity and targeted locale coverage, while current merge-head validation remains required before landing.

Priority: P3
Reviewed head: 192b2e16fb0982bd3290928120b507e179cdb230

Review scores

Measure Result What it means
Overall readiness 🐚 platinum hermit (4/6) The localization implementation is structurally complete, covered by existing locale checks, and supported by current-head visible UI proof.
Proof confidence 🦞 diamond lobster (5/6) ✨ media proof bonus Sufficient (screenshot): The changed production surface is the pt-BR WinUI resource catalog, selected by the existing locale mechanism; the contributor supplied a Windows running-UI screenshot after building the branch, and later commits only refine documentation and focused locale coverage.
Patch quality 🐚 platinum hermit (4/6) No actionable review findings were identified.

Verification

Check Result Evidence
Real behavior Verified Sufficient (screenshot): The changed production surface is the pt-BR WinUI resource catalog, selected by the existing locale mechanism; the contributor supplied a Windows running-UI screenshot after building the branch, and later commits only refine documentation and focused locale coverage.
Evidence reviewed 5 items pt-BR is allowed only by this PR's testing override: The introduced whitelist retains the existing locale-injection boundary and adds pt-br as an accepted value.
Resource catalog is structurally aligned: The pt-br catalog has 2,429 resource entries, matching en-us; the key-set comparison produced no differences and no duplicate names.
Focused coverage includes the new locale: Localization validation and related tray contract tests now enumerate pt-br, including the Latin-script invariant-locale rule.
Findings None None.
Security None None.

How this fits together

WinUI resource files supply localized text to XAML controls and runtime lookups in the Windows tray application. Windows selects the display locale, while the development override lets maintainers exercise a supported locale during testing.

flowchart LR
  A[Windows display locale] --> C[Locale selection]
  B[Development language override] --> C
  C --> D[WinUI resource catalog]
  D --> E[XAML controls]
  D --> F[Runtime text lookup]
  E --> G[Localized tray application]
  F --> G
Loading

Before merge

  • Resolve merge risk (P1) - The branch base predates current main, including changes to the application entry point and localization test surfaces; required validation should run against the exact merge head before merge.
  • Complete next step (P2) - Run the required full build plus shared and tray test suites against the exact current merge head before landing.
Agent review details

Security

None.

Review metrics

Metric Value Why it matters
Localization and test delta runtime resource +7,136; test edits +10/-9 The large catalog addition is accompanied by focused updates that put the new locale through existing parity and contract checks.

Merge-risk options

Maintainer options:

  1. Decide the mitigation before merge
    Land the locale catalog after the required merge-head build and shared/tray test subset confirms it integrates with current main.
  2. Pause or close
    Do not merge this PR until maintainers decide whether the risk is worth taking.

Technical review

Best possible solution:

Land the locale catalog after the required merge-head build and shared/tray test subset confirms it integrates with current main.

Do we have a high-confidence way to reproduce the issue?

Not applicable. This PR adds a language catalog rather than repairing a reported failing behavior; a current-head Windows screenshot demonstrates the intended rendered state.

Is this the best way to solve the issue?

Yes. A resource catalog plus the existing locale-validation path is the repository's established localization mechanism, and the related translation call explicitly invited a pt-BR contribution.

AGENTS.md: found and applied where relevant.

Codex review notes: model internal, reasoning high; reviewed against 2cf875d5529a.

Labels

Label justifications:

  • P3: This is a low-risk accessibility and localization feature with no changed permissions, network behavior, or persisted-data contract.
  • rating: 🐚 platinum hermit: Overall readiness is 🐚 platinum hermit; proof is 🦞 diamond lobster and patch quality is 🐚 platinum hermit.
  • status: 👀 ready for maintainer look: ClawSweeper has no concrete contributor-facing blocker left for this PR. Sufficient (screenshot): The changed production surface is the pt-BR WinUI resource catalog, selected by the existing locale mechanism; the contributor supplied a Windows running-UI screenshot after building the branch, and later commits only refine documentation and focused locale coverage.
  • proof: sufficient: Contributor real behavior proof is sufficient. The changed production surface is the pt-BR WinUI resource catalog, selected by the existing locale mechanism; the contributor supplied a Windows running-UI screenshot after building the branch, and later commits only refine documentation and focused locale coverage.
  • proof: 📸 screenshot: Contributor real behavior proof includes screenshot evidence. The changed production surface is the pt-BR WinUI resource catalog, selected by the existing locale mechanism; the contributor supplied a Windows running-UI screenshot after building the branch, and later commits only refine documentation and focused locale coverage.

Evidence

What I checked:

Likely related people:

  • Scott Hanselman: Suggested for follow-up; no historical authorship or introduction is verified. (role: unverified routing candidate; confidence: low)
  • Barbara Kudiess: Suggested for follow-up; no historical authorship or introduction is verified. (role: unverified routing candidate; confidence: low)

Rank-up moves

Optional improvements that raise the rating; they are not merge blockers.

  • Run the required build, shared tests, and tray tests against the exact current merge head before landing.

Rating scale

Score Internal tier Crab rank Meaning
6/6 S 🦀 challenger crab Exceptional readiness
5/6 A 🦞 diamond lobster Very strong readiness
4/6 B 🐚 platinum hermit Good normal PR; ordinary maintainer review
3/6 C 🦐 gold shrimp Useful, but confidence is limited
2/6 D 🦪 silver shellfish Proof or implementation needs work
1/6 F 🧂 unranked krab Not merge-ready
N/A NA 🌊 off-meta tidepool Rating does not apply

Overall follows the weaker of proof and patch quality.
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics.

Workflow

  • ClawSweeper keeps one durable marker-backed review comment per issue or PR.
  • Re-runs edit this comment so the latest verdict, findings, and automation markers stay together instead of adding duplicate bot comments.
  • A fresh review can be triggered by eligible @clawsweeper re-review comments, exact-item GitHub events, scheduled/background review runs, or manual workflow dispatch.
  • PR/issue authors and users with repository write access can comment @clawsweeper re-review or @clawsweeper re-run on an open PR or issue to request a fresh review only.
  • Maintainers can also comment @clawsweeper review to request a fresh review only.
  • Fresh-review commands do not start repair, autofix, rebase, CI repair, or automerge.
  • Maintainer-only repair and merge flows require explicit commands such as @clawsweeper autofix, @clawsweeper automerge, @clawsweeper fix ci, or @clawsweeper address review.
  • Maintainers can comment @clawsweeper explain to ask for more context, or @clawsweeper stop to stop active automation.

History

Review history (6 earlier review cycles)
  • reviewed 2026-08-28T19:25:51.411Z sha 043d4f4 :: needs real behavior proof before merge. :: [P1] Synchronize pt-BR with the current resource key set | [P1] Remove the duplicate DebugPage resource entry
  • reviewed 2026-08-28T22:56:28.737Z sha 6788eaf :: needs changes before merge. :: [P2] Include pt-BR in the supported test locale list
  • reviewed 2026-08-28T23:01:28.303Z sha 6788eaf :: needs changes before merge. :: [P1] Allow pt-BR as a Latin-script invariant locale | [P2] Include pt-BR in the supported runtime test locale list | [P3] Replace the em dash in the translated heading
  • reviewed 2026-08-28T23:30:42.054Z sha cfb58ba :: needs changes before merge. :: [P3] Document pt-BR as a supported locale
  • reviewed 2026-08-28T23:40:23.504Z sha 87a1cc6 :: needs changes before merge. :: [P3] Cover pt-BR in generated session-title resource checks | [P3] Update the fixed supported-locale directory assertion
  • reviewed 2026-08-28T23:53:08.237Z sha 192b2e1 :: needs maintainer review before merge. :: none

payaci added 2 commits August 28, 2026 16:48
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
@payaci

payaci commented Aug 28, 2026

Copy link
Copy Markdown
Author

Validated on current HEAD.

Built and launched OpenClaw locally and verified pt-BR resources render in the running Companion UI.
b10068b8-319e-461e-9cc6-aede74a86430

@clawsweeper re-review

@clawsweeper

clawsweeper Bot commented Aug 28, 2026

Copy link
Copy Markdown

🦞🧹
ClawSweeper re-review requested.

I asked ClawSweeper to review this item again.
Action: item re-review queued (workflow sweep.yml, event exact_review_queue).
Result: when the review finishes, ClawSweeper will create the durable review comment if needed or update the existing comment in place.

Re-review progress:

@clawsweeper clawsweeper Bot added proof: 📸 screenshot Contributor real behavior proof includes screenshot evidence. proof: sufficient Contributor real behavior proof is sufficient. rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. status: ⏳ waiting on author ClawSweeper has contributor-facing work open and is waiting for author action. and removed status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask. rating: 🦪 silver shellfish Thin PR readiness signal; proof, validation, or implementation needs work. merge-risk: 🚨 compatibility 🚨 Merging this PR could break existing users, config, migrations, defaults, or upgrades. labels Aug 28, 2026
@payaci

payaci commented Aug 28, 2026

Copy link
Copy Markdown
Author

@clawsweeper re-review

@clawsweeper

clawsweeper Bot commented Aug 28, 2026

Copy link
Copy Markdown

🦞🧹
ClawSweeper re-review requested.

I asked ClawSweeper to review this item again.
Action: item re-review queued (workflow sweep.yml, event exact_review_queue).
Result: when the review finishes, ClawSweeper will create the durable review comment if needed or update the existing comment in place.

Re-review progress:

@clawsweeper clawsweeper Bot added rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. and removed rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. labels Aug 28, 2026
@clawsweeper clawsweeper Bot added status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. and removed status: ⏳ waiting on author ClawSweeper has contributor-facing work open and is waiting for author action. labels Aug 28, 2026
@payaci

payaci commented Aug 28, 2026

Copy link
Copy Markdown
Author

Resolved the remaining localization documentation finding:

  • Added pt-BR to supported locales table
  • Added pt-BR to OPENCLAW_LANGUAGE testing example

@clawsweeper re-review

@clawsweeper

clawsweeper Bot commented Aug 28, 2026

Copy link
Copy Markdown

🦞🧹
ClawSweeper re-review requested.

I asked ClawSweeper to review this item again.
Action: item re-review queued (workflow sweep.yml, event exact_review_queue).
Result: when the review finishes, ClawSweeper will create the durable review comment if needed or update the existing comment in place.

Re-review progress:

@payaci

payaci commented Aug 28, 2026

Copy link
Copy Markdown
Author

@clawsweeper re-review

@clawsweeper

clawsweeper Bot commented Aug 28, 2026

Copy link
Copy Markdown

🦞🧹
ClawSweeper re-review requested.

I asked ClawSweeper to review this item again.
Action: item re-review queued (workflow sweep.yml, event exact_review_queue).
Result: when the review finishes, ClawSweeper will create the durable review comment if needed or update the existing comment in place.

Re-review progress:

@shanselman shanselman added the status: 🚢 actively landing A maintainer or agent is actively driving this item through implementation, validation, or merge. label Sep 2, 2026
@shanselman

Copy link
Copy Markdown
Collaborator

Superseded by #1295, which merges this PR's exact head (192b2e1) forward with current main and reconciles pt-BR against the repo's all-or-none locale policy (adds missing Ollama keys, reverts deliberately-deferred English-seeded keys that had been translated, and translates keys the other 4 non-English locales already translate). I don't have push access to this fork's branch (feat-ptbr-localization), so I couldn't fast-forward this PR directly. Closing in favor of #1295; thank you for the original contribution.

@shanselman shanselman closed this Sep 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

P3 Low-risk cleanup, docs, polish, ergonomics, or speculative feature. proof: 📸 screenshot Contributor real behavior proof includes screenshot evidence. proof: sufficient Contributor real behavior proof is sufficient. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. status: 🚢 actively landing A maintainer or agent is actively driving this item through implementation, validation, or merge. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants